Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

[...nextauth].ts 839B

1234567891011121314151617181920212223242526272829303132333435363738
  1. import NextAuth from 'next-auth';
  2. import Credentials from 'next-auth/providers/credentials';
  3. import dbConnect from '../../../utils/helpers/dbHelpers';
  4. const User = require('../../../models/user');
  5. // @ts-ignore
  6. export default NextAuth({
  7. session: {
  8. // @ts-ignore
  9. jwt: true,
  10. },
  11. callbacks: {
  12. async jwt({ token, user }) {
  13. return { ...token, ...user };
  14. },
  15. // @ts-ignore
  16. async session({ token }) {
  17. return token;
  18. },
  19. },
  20. providers: [
  21. Credentials({
  22. // @ts-ignore
  23. async authorize(credentials) {
  24. await dbConnect();
  25. // @ts-ignore
  26. const userData = await User.findByCredentials(
  27. // @ts-ignore
  28. credentials.username,
  29. // @ts-ignore
  30. credentials.password
  31. );
  32. return { user: userData };
  33. },
  34. }),
  35. ],
  36. });